#include "My_WWDG.h"

void WWDG_IRQHandler(void) {
if (WWDG_GetFlagStatus() != RESET) {  // 检查WWDG是否触发了EWI中断
printf1("WWDG_IRQHandler \r\n");

WWDG_ClearFlag();        // 清除WWDG中断标志
}
}

void My_WWDG_Init(void){
RCC_APB1PeriphClockCmd(RCC_APB1Periph_WWDG, ENABLE);  // 使能WWDG时钟

WWDG_SetPrescaler(WWDG_Prescaler_8);  // 设置预分频系数(2^3=8)
WWDG_SetWindowValue(0x50);            // 设置窗口值(喂狗不能早于0x50)
WWDG_Enable(0x7F);                    // 计数器初值0x7F,启动WWDG

WWDG_ClearFlag();                      // 清除中断标志
WWDG_EnableIT();                        // 使能WWDG早期唤醒中断(EWI)
NVIC_EnableIRQ(WWDG_IRQn);              // 使能WWDG中断
}

